// Generated from .\MyParser.g4 by ANTLR 4.9.2

package com.giteelou.antlr.ps;

import org.antlr.v4.runtime.tree.ParseTreeVisitor;

/**
 * This interface defines a complete generic visitor for a parse tree produced
 * by {@link MyParser}.
 *
 * @param <T> The return type of the visit operation. Use {@link Void} for
 * operations with no return type.
 */
public interface MyParserVisitor<T> extends ParseTreeVisitor<T> {
	/**
	 * Visit a parse tree produced by {@link MyParser#pragma}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPragma(MyParser.PragmaContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#statement}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitStatement(MyParser.StatementContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableDeclaration}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableDeclaration(MyParser.VariableDeclarationContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableDeclarators}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableDeclarators(MyParser.VariableDeclaratorsContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableDeclarator}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableDeclarator(MyParser.VariableDeclaratorContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableDeclaratorId}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableDeclaratorId(MyParser.VariableDeclaratorIdContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableInitializer}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableInitializer(MyParser.VariableInitializerContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#variableAssignment}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitVariableAssignment(MyParser.VariableAssignmentContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#primitiveType}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitPrimitiveType(MyParser.PrimitiveTypeContext ctx);
	/**
	 * Visit a parse tree produced by {@link MyParser#literal}.
	 * @param ctx the parse tree
	 * @return the visitor result
	 */
	T visitLiteral(MyParser.LiteralContext ctx);
}